/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.ifrr.gepro.pessoa.handler;

import br.ifrr.gepro.pessoa.bean.PessoaBean;
import br.ifrr.gepro.pessoa.dao.PessoaDao;
import br.ifrr.gepro.util.DAOException;
import br.ifrr.gepro.util.JsfUtil;
import br.ifrr.gepro.util.Navegacao;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.model.SelectItem;

/**
 *
 * @author rafael
 */
@ManagedBean(name = "pessoa")
@SessionScoped
public class PessoaMB {

    private PessoaBean novapessoa = new PessoaBean();
    private ArrayList<PessoaBean> listaPessoas = new ArrayList<PessoaBean   >();
    private int etapaCadastro = 0;

    public int getEtapaCadastro() {
        return etapaCadastro;
    }

    public void setEtapaCadastro(int etapaCadastro) {
        this.etapaCadastro = etapaCadastro;
    }

    public String salvar() throws DAOException {
        new PessoaDao().inserir(getNovapessoa());
        JsfUtil.showMessageInfo("Cadastro realizado com sucesso!");
        setNovapessoa(new PessoaBean());
        return null;
    }

    public String preparaCadastro() {
        setEtapaCadastro(0);
        novapessoa = new PessoaBean();
        return Navegacao.paginaCadTecnico;
    }

    /**
     * @return the novapessoa
     */
    public PessoaBean getNovapessoa() {
        return novapessoa;
    }

    /**
     * @param novapessoa the novapessoa to set
     */
    public void setNovapessoa(PessoaBean novapessoa) {
        this.novapessoa = novapessoa;
    }
    
    
    public ArrayList<PessoaBean> getListaPessoas() throws DAOException {
        listaPessoas = (ArrayList<PessoaBean>) new PessoaDao().listar();
        return listaPessoas;
    }

    public void setListaPessoas(ArrayList<PessoaBean> listaPessoas) {
        this.listaPessoas = listaPessoas;
    }
    
    
    public List<PessoaBean> getPessoas() throws DAOException {
        return new PessoaDao().listar();

    }

    public List<SelectItem> getPessoasCombo() throws DAOException {
        List<SelectItem> lista = new ArrayList<SelectItem>();
        for (PessoaBean p : getPessoas()) {
            lista.add(new SelectItem(p.getIdPessoa(), p.getNome()));
        }
        return lista;
    }
}
